/*
 * Android Runner is a multiplayer GPS game fully written by Xurxo Mendez Perez
 * 
 * Copyright (C) 2009 Xurxo Mendez Perez
 *   
 * This file is part of Android Runner.
 * 
 * Android Runner is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * Android Runner is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with Android Runner.  If not, see <http://www.gnu.org/licenses/>.
 */

package es.sonxurxo.gpsgame.client.model.service.player;

import java.util.List;

import es.sonxurxo.gpsgame.client.model.service.to.FinishedGame;
import es.sonxurxo.gpsgame.client.model.service.to.Player;
import es.sonxurxo.gpsgame.client.model.service.to.PublicPlayerProfileTO;

/**
 * 
 * @author "Xurxo Mendez Perez"
 *
 */
public interface PlayerService {

	public Player loginPlayer(String login, String clearPassword) 
	throws Exception;
	
	public boolean registerPlayer(String login, String clearPassword, String email,
			boolean showPersonalInfo, String phone, String name, String surname, String country,
			int imageId) 
	throws Exception;
	
	public boolean updatePlayer(String email, boolean showEmail, String phone, String name, 
			String surname, String country, int imageId) 
	throws Exception;
	
	public PublicPlayerProfileTO getPublicPlayerProfile(String login) 
	throws Exception;
	
	public void logoutPlayer(String login) 
	throws Exception;
	
	public List<FinishedGame> getHistory(String login) throws Exception;
	
	public boolean changePassword(String oldPassword, String newPassword) 
	throws Exception;
}
